class Solution {
public:
    ListNode* oddEvenList(ListNode* head) {
        if(head == nullptr)
        {
            return head;
        }
        ListNode* left = head;//奇数节点
        ListNode* right = head->next;//偶数节点
        ListNode* newhead = right;
        while(right&&right->next)
        {
            //将奇数节点进行连接
            left->next = right->next;
            left = left->next;//移动到下一个奇数节点
            right->next = left->next;//连接到下一个偶数节点
            right = right->next;
        }
        //最后将所有的偶数节点放到奇数排列的后面
        left->next = newhead;
        return head;
    }
};